import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ArrayListTest {
    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();

        list.add(1);
        list.add(0, 1);
        System.out.println(list);
        
    }
    public static void main2(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();

        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(5);
        list.add(6);

//        int len = list.size();
//
//        for (int i = 0; i < len; i++) {
//            System.out.print(list.get(i) + " ");
//        }

//        for (int i : list) {
//            System.out.print(i + " ");
//        }

        Iterator iterator = list.iterator();
        while (iterator.hasNext()) {
            System.out.print(iterator.next() + " ");
        }
    }


    public static void main1(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();

        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(5);
        list.add(6);

        System.out.println(list);

        List<Integer> list2 = list.subList(0, 4);
        System.out.println(list2);

//        list2.clear();
//        System.out.println(list2);
//        System.out.println(list);

        list.clear();
        System.out.println(list2);

//        ArrayList<Integer> list1 = new ArrayList<>(list.subList(0, 4));
//        System.out.println(list1);
//
//        list.clear();
//        System.out.println(list1);
    }
}
